Fix slowdown and wrong font choosed by XSETTINGS changes. bug #5157.
authorJan D. <jan.h.d@swipnet.se>
Wed, 6 Jan 2010 19:43:11 +0000 (20:43 +0100)
committerJan D. <jan.h.d@swipnet.se>
Wed, 6 Jan 2010 19:43:11 +0000 (20:43 +0100)
commit05f2680807baae597a2cee2cc643938f7c21a670
tree19c17a3ff40dd3ea94a66c6ad3b297f09fdd9f61
parentb35cf26c2342eb1bf62326002679c49bb3c82a3d
parent15461b36ca1ff814c7db404ef940bd85a824b119
Fix slowdown and wrong font choosed by XSETTINGS changes. bug #5157.

* font.c (font_open_entity): Enable chache and call cached_font_ok
for the driver if defined.
(QCuser_spec): New symbol.
(font_spec_from_name): Save name as user-spec.
(font_load_for_lface): Keep user-spec instead of name.
(font_open_by_name): Save name as user-spec.
(syms_of_font): Initialize QCuser_spec.

* xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
(xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
(syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.

* font.h (struct font_driver): Add cached_font_ok.

* font-setting.el (font-setting-change-default-font): Use user-spec
instead of name.